#!/bin/bash

# 设置定时任务脚本
# 每天凌晨12点自动生成预约配置

# 获取当前脚本的绝对路径
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
SERVER_DIR="$(dirname "$SCRIPT_DIR")"
AUTO_GENERATE_SCRIPT="$SCRIPT_DIR/auto_generate_configs.sh"

# 检查脚本是否存在
if [ ! -f "$AUTO_GENERATE_SCRIPT" ]; then
    echo "❌ 自动生成脚本不存在: $AUTO_GENERATE_SCRIPT"
    exit 1
fi

# 创建crontab条目（需要切换到服务器目录执行）
CRON_ENTRY="0 0 * * * cd $SERVER_DIR && $AUTO_GENERATE_SCRIPT"

# 检查是否已经存在相同的crontab条目
if crontab -l 2>/dev/null | grep -q "auto_generate_configs.sh"; then
    echo "⏭️  定时任务已存在，跳过设置"
else
    # 添加新的crontab条目
    (crontab -l 2>/dev/null; echo "$CRON_ENTRY") | crontab -
    echo "✅ 已设置定时任务: 每天凌晨12点自动生成预约配置"
    echo "📝 Crontab条目: $CRON_ENTRY"
fi

# 显示当前的crontab
echo ""
echo "📋 当前定时任务列表:"
crontab -l 2>/dev/null || echo "暂无定时任务"

echo ""
echo "💡 提示:"
echo "   - 定时任务将在每天凌晨12:00执行"
echo "   - 日志文件位置: $SCRIPT_DIR/../logs/auto_generate_configs.log"
echo "   - 如需删除定时任务，请运行: crontab -e"
